package com.cn.jx.manager.form;

import com.cn.jx.common.form.BaseForm;
import com.jx.annotation.IsNotEmpty;
import com.jx.annotation.LengthRange;
import com.jx.annotation.Regular;
import com.jx.annotation.Update;
import com.jx.enumType.RegexEnum;

/**
 * <p>UserForm 用户form类 
 * <p>主要负责页面表单提交和表格动态列输出功能
 * 
 * @author <h1>jiangxu2  2019年11月21日</h1>
 * @version v1.11.20.2019
 * @since 1.0
 * 
 */
public class UserForm  extends BaseForm{
	
	private static final long serialVersionUID = -9192093654510360338L;

	private String employeeCode;
	
	/** <p>登录名 <p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="登录名不能为空")
	@Regular(rule=RegexEnum._USERNAME,prompt="登录名不符合要求(必须是字母开头5-20位之间的字母数字下划线)")
	@Update
	private String loginName;
	
	/** <p>中文名 <p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="中文名不能为空")
	@Regular(rule=RegexEnum._CHINA,prompt="中文名必须是1到10位中文字符")
	@LengthRange(minLen=1,maxLen=10,prompt="中文名长度必须在1-10位范围")
	@Update
	private String chineseName;
	
	/** <p>英文名<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="英文名不能为空")
	@Regular(rule=RegexEnum._ENGLISH,prompt="英文名必须是1到20位英文字符")
	@LengthRange(minLen=1,maxLen=20,prompt="英文名长度必须在1-20位范围")
	@Update
	private String englishName;
	
	@IsNotEmpty(prompt="手机号不能为空")
	@Regular(rule=RegexEnum._MOBILE,prompt="手机号输入有误")
	private String mobile;
	
	@IsNotEmpty(prompt="邮箱不能为空")
	@Regular(rule=RegexEnum._EMAIL,prompt="邮箱输入有误")
	private String email;
	
	/** <p>性别<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="性别不能为空")
	@Update
	private String sex;
	
	/** <p>管理员权限<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="管理权限必须勾选")
	@Update
	private Integer adminFlg;
	
	/** <p>员工类型<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="类型不能为空")
	@Update
	private String employeeType;
	
	/** <p>密码<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="密码不能为空")
	@Regular(rule=RegexEnum._PWD,prompt="密码只能是英文字母数字及特殊字符")
	@LengthRange(minLen=8,maxLen=20,prompt="密码长度必须在8-20位范围")
	private String password;
	
	/** <p>职级<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="职级不能为空")
	@LengthRange(minLen=1,maxLen=2,prompt="只能输入个位数字")
	@Update
	private Integer jobLevel;
	
	
	/** <p>组织ID 选择组织获取<p>设置为{@link String String}类型*/
	@IsNotEmpty(prompt="请选择所属组织机构")
	private String orgId;
	
	@IsNotEmpty(prompt="请选择岗位")
	private String jobId;
	
	private String countryCode;
	
	private String areaCode;
	
	private String photoFile;
	
	public String getCountryCode() {
		return countryCode;
	}
	public void setCountryCode(String countryCode) {
		this.countryCode = countryCode;
	}
	public String getAreaCode() {
		return areaCode;
	}
	public void setAreaCode(String areaCode) {
		this.areaCode = areaCode;
	}
	/** <p>{@link String String}<p>getOrgId()*/
	public String getOrgId() {
		return orgId;
	}
	/** <p>{@link Integer Integer}<p>getAdminFlg()*/
	public Integer getAdminFlg() {
		return adminFlg;
	}
	/** <p>{@link String String}<p>getLoginName()*/
	public String getLoginName() {
		return loginName;
	}
	/** <p>{@link String String}<p>getChineseName()*/
	public String getChineseName() {
		return chineseName;
	}
	/** <p>{@link String String}<p>getEnglishName()*/
	public String getEnglishName() {
		return englishName;
	}
	/** <p>{@link String String}<p>getPassword()*/
	public String getPassword() {
		return password;
	}
	/** <p>{@link String String getEmployeeCode()*/
	public String getEmployeeCode() {
		return employeeCode;
	}
	/** <p>{@link String String getSex()*/
	public String getSex() {
		return sex;
	}
	/** <p>{@link String String getEmployeeType()*/
	public String getEmployeeType() {
		return employeeType;
	}
	/** <p>{@link Integer Integer getJobLevel()*/
	public Integer getJobLevel() {
		return jobLevel;
	}
	/** <p>{@link String String getMobile()*/
	public String getMobile() {
		return mobile;
	}
	/** <p>{@link String String getEmail()*/
	public String getEmail() {
		return email;
	}
	/** <p>setOrgId({@link String orgId})*/
	public void setOrgId(String orgId) {
		this.orgId = orgId;
	}
	/** <p>setAdminFlg({@link Integer adminFlg})*/
	public void setAdminFlg(Integer adminFlg) {
		this.adminFlg = adminFlg;
	}
	/** <p>setLoginName({@link String loginName})*/
	public void setLoginName(String loginName) {
		this.loginName = loginName;
	}
	/** <p>setChineseName({@link String chineseName})*/
	public void setChineseName(String chineseName) {
		this.chineseName = chineseName;
	}
	/** <p>setEnglishName({@link String englishName})*/
	public void setEnglishName(String englishName) {
		this.englishName = englishName;
	}
	/** <p>setPassword({@link String password})*/
	public void setPassword(String password) {
		this.password = password;
	}
	/** <p>setEmployeeCode({@link String String employeeCode})*/
	public void setEmployeeCode(String employeeCode) {
		this.employeeCode = employeeCode;
	}
	/** <p>setSex({@link String String sex})*/
	public void setSex(String sex) {
		this.sex = sex;
	}
	/** <p>setEmployeeType({@link String String employeeType})*/
	public void setEmployeeType(String employeeType) {
		this.employeeType = employeeType;
	}
	/** <p>setJobLevel({@link Integer Integer jobLevel})*/
	public void setJobLevel(Integer jobLevel) {
		this.jobLevel = jobLevel;
	}
	/** <p>setMobile({@link String String mobile})*/
	public void setMobile(String mobile) {
		this.mobile = mobile;
	}
	/** <p>setEmail({@link String String email})*/
	public void setEmail(String email) {
		this.email = email;
	}
	/** <p>{@link String String getJobId()*/
	public String getJobId() {
		return jobId;
	}
	/** <p>setJobId({@link String String jobId})*/
	public void setJobId(String jobId) {
		this.jobId = jobId;
	}
	/** <p>{@link String String getPhotoFile()*/
	public String getPhotoFile() {
		return photoFile;
	}
	/** <p>setPhotoFile({@link String String photoFile})*/
	public void setPhotoFile(String photoFile) {
		this.photoFile = photoFile;
	}
	
}
